<?php
//======================================================================================
//
// Function: List work centers => ALFA_ORC_STOPTIME_GetWCList
//
// Programmer: JKJ
// Date : 2024-10-08
//
// Copyright Reeft A/S (c) - 2024
//======================================================================================
//======================================================================================
// Get input
//======================================================================================
//======================================================================================
// Make line uppercase
//======================================================================================
//======================================================================================
// General config
//======================================================================================
include "config/config.php";
//======================================================================================
// Check if user is logged in?
//======================================================================================
include "login_check.php";
//======================================================================================
// Get session variables
//======================================================================================
include "include/getsession.php";
//======================================================================================
// Set language
//======================================================================================
include "include/set_language.php";
//======================================================================================
// Set defaults
//======================================================================================
// $pk_reference = $_SESSION['session_dft_pk_reference'];
// $referenceCode = $_SESSION['session_dft_referencecode'];
// $referenceName = $_SESSION['session_dft_referencename'];
//======================================================================================
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title><?php echo $datahub_text0001 ?></title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="REEFTvisual - Stoptime">
<meta name="author" content="REEFT A/S">
<link rel="icon" href="images/favicon/favicon.ico">
<!-- Bootstrap / jQuery -->
<link href="css/bootstrap4.3.1/css/bootstrap.custom.min.css" rel="stylesheet">
<link href="css/bootstrap4.3.1/css/themes/bootstrap.custom.min.css" rel="stylesheet">
<link href="css/bootstrap4.3.1/css/normalize.css" rel="stylesheet" type="text/css">
<link href="css/sticky-footer.css" rel="stylesheet" type="text/css">
<!-- Custom styles for this template -->
<link href="css/custom.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<script src="css/fontawesome6.5.1/js/all.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-light.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-regular.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-solid.min.js"></script>
<script src="css/fontawesome6.5.1/js/sharp-thin.min.js"></script>
<link href="css/bootstrap_animation/css/animate4/animate.css" rel="stylesheet" type="text/css">
<!--<link href="javascript/chosen/chosen.css" rel="stylesheet" type="text/css">-->
<link href="javascript/jquery-ui/jquery-ui.min.css" rel="stylesheet" type="text/css"/>
<script src="javascript/jquery.js"></script>
<script src="css/bootstrap4.3.1/js/popper.js"></script>
<script src="css/bootstrap4.3.1/js/bootstrap.min.js"></script>
<script src="javascript/jquery-ui/jquery-ui.min.js"></script>
<script src="javascript/jquery.ui.touch-punch.min.js"></script>
<link href="javascript/bgrins-spectrum/spectrum.css" rel="stylesheet" type="text/css">
<script src="javascript/bgrins-spectrum/spectrum.js"></script>
<script src="javascript/moment.min.js"></script>
<script src="javascript/moment-with-locales.min.js"></script>
<script src="javascript/moment-duration-format.min.js"></script>
<script src="javascript/number_format/jquery.number.min.js"></script>
<script src="javascript/jquery.scrollTo.min.js"></script>
<link href="javascript/daatatables/media/css/jquery.dataTables.min.css" rel="stylesheet" type="text/css">
<link href="javascript/daatatables/media/css/fixedHeader.dataTables.min.css" rel="stylesheet" type="text/css">
<link href="javascript/daatatables/Buttons-1.4.2/css/buttons.dataTables.min.css" rel="stylesheet" type="text/css">
<script src="javascript/daatatables/media/js/jquery.dataTables.min.js"></script>
<script src="javascript/daatatables/media/js/dataTables.fixedHeader.min.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/dataTables.buttons.min.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/buttons.flash.min.js"></script>
<script src="javascript/daatatables/JSZip-2.5.0/jszip.min.js"></script>
<script src="javascript/daatatables/pdfmake-0.1.53/pdfmake.min.js"></script>
<script src="javascript/daatatables/pdfmake-0.1.53/vfs_fonts.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/buttons.html5.min.js"></script>
<script src="javascript/daatatables/Buttons-1.4.2/js/buttons.print.min.js"></script>
<script src="javascript/chosen/chosen.jquery.min.js" type="text/javascript"></script>
<script src="javascript/viewer-master/dist/viewer.min.js"></script>
<link href="javascript/viewer-master/dist/viewer.min.css" rel="stylesheet">
<script src="javascript/ajaxq/ajaxq.js"></script>
<link id="scrollUpTheme" rel="stylesheet" href="javascript/scrollup-master/dist/css/themes/image.css">
<script src="javascript/scrollup-master/dist/jquery.scrollUp.js"></script>
<script src="javascript/shortcut.js"></script>
<script src="javascript/_reeft_js/set_font_awesome_icon_type.js"></script>
<script src="javascript/_reeft_js/date_convert.js"></script>
<style>
.modal-body {
max-height: calc(100vh - 143px);
overflow-y: auto; }
.btn-custom-wide {
height:60px;
width:210px;
}
.modal-xxl {
max-width: 80%;
}
.modal-xl {
max-width: 50%;
}
.border-3 {
border-width:3px !important;
}
td .hover-img {
position:relative;
}
td .hover-img span {
position:absolute; left:-9999px; top:-9999px; z-index:9999;
}
td:hover .hover-img span {
top: 5px;
left:0px;
}
.chosen-container-single {
min-width: 100%;
}
</style>
<script language="JavaScript">
//=============================================================================
// Globals
//=============================================================================
var myCurrentRow;
var myGlobalRowData;
var myGlobalTableData;
var global_all_lines = '';
var global_all_workcenters = '';
var global_debug = 'N';
// Add allowed Y/N
var GLOBAL_ADD_ALLOWED = 'N';
// Delete allowed Y/N
var GLOBAL_DELETE_ALLOWED = 'N';
var DFT_DATE_DISPLAY_FORMAT = '<?php //echo $DFT_DATE_DISPLAY_FORMAT ?>';
var DFT_LANGUAGE = '<?php //echo $DFT_LANGUAGE ?>';
var GLOBAL_TOTALPAGESSTOPVALUE = 10;
// Save field
var save_WXPID = '';
$(function () {
$.scrollUp({
scrollName: 'scrollUp', // Element ID
//topDistance: '1800', // Distance from top before showing element (px)
//topSpeed: 300, // Speed back to top (ms)
scrollDistance: '300', // Distance from top before showing element (px)
scrollSpeed: 300, // Speed back to top (ms)
animation: 'fade', // Fade, slide, none
animationInSpeed: 200, // Animation in speed (ms)
animationOutSpeed: 200, // Animation out speed (ms)
scrollText: false, //'Scroll to top', // Text for element
activeOverlay: false, // Set CSS color to display scrollUp active point, e.g '#00FFFF'
});
});
//=============================================================================
// Get data
//=============================================================================
function getData()
{
$('#data-result').html('<?php echo $datahub_datatable_Processing ?>').addClass('text-center');
// Get the current search line
var input_search_arg = $('#input-search-arg').val();
// Create param list
parmData = '&search_arg=' + input_search_arg
;
$.ajax({
url: "hub_wa0364_maintain_get.php",
type: "GET",
data: parmData,
dataType: "json",
cache: false,
beforeSend: function( xhr ) {
}
})
.done(function( jsonData ) {
var returnCode = jsonData.header.returnCode;
var returnMsg = jsonData.header.returnMsg;
var entries_found = jsonData.header.entries_found;
var response_sec = jsonData.header.response_sec;
var response_sec_web = jsonData.header.response_sec_web;
var response_sec_total = jsonData.header.response_sec_total;
pct1 = (parseFloat(response_sec_web) / parseFloat(response_sec_total)) * 100;
pct2 = (parseFloat(response_sec) / parseFloat(response_sec_total)) * 100;
pct1 = pct1.toFixed(3) + '%';
pct2 = pct2.toFixed(3) + '%';
// Show load time
//$('#load-time-from-database').html( '((' + response /_sec + ') + ')'');
$('#load-time-from-database').html('Load time: ' + 'Total: ' + response_sec_total + ' / JDE: ' + response_sec_web + ' / DATAHUB: ' + response_sec + ' (' + pct1 + ' / ' + pct2 + ')' );
//=====================================================================================
// Create group buttons, only if wanted
//=====================================================================================
// Init button line fields
var HTMLlineButtons = '';
var selectedButtonClass = 'btn-dark';
GLOBAL_SHOW_GROUP_BUTTONS = 'Y';
if ( GLOBAL_SHOW_GROUP_BUTTONS == 'Y' ) {
$.each( jsonData.header_buttons, function( index, object ){
var buttonLine = object.buttonLine;
var buttonCount = object.buttonCount;
selectedButtonClass = 'btn-dark';
var selectButtonLineID = 'select-button-line-id-' + buttonLine;
HTMLlineButtons += '<button type="button" onclick="setWebserviceSearch(\'' + buttonLine + '\')" style="cursor:default" id="' + selectButtonLineID + '" class="btn ' + selectedButtonClass + ' select-button-line btn-sm mr-1 mb-1">'
+ buttonLine + ' (<b>' + buttonCount + '</b>)'
+ '</button>'
});
// Reset
HTMLlineButtons += '<button type="button" onclick="setWebserviceSearch(\'' + '*RESET' + '\')" style="cursor:default" id="' + 'RESET' + '" class="btn ' + 'btn-warning' + ' select-button-line btn-sm mr-1 mb-1">'
+ '<b>' + 'Show all' + '</b>'
+ '</button>'
$('#data-result-button-group').html(HTMLlineButtons);
}
//=====================================================================================
myWorkCenterData = '';
// Place data in matrix
$.each( jsonData.data, function( index, object ){
var counter = object.counter;
var WRKC1 = object.WRKC1;
var WRKC2 = object.WRKC2;
var WORKCENTER = object.WORKCENTER;
var WKCD1 = object.WKCD1;
var EFSH3 = object.EFSH3;
// Create workcenter line
myWorkCenterData += ''
+ '<button type="button" style="width:100px;max-width:150px" class="btn btn-primary btn-smx mb-1 mr-1 class_input_button_all workcenter-class-' + WRKC1
+ ' '
+ 'button_' + WORKCENTER + '"'
+ ' '
+ 'title="'
+ WKCD1
+ '"'
+ ' '
+'onclick="loadWorkOrders('
+'\''
+ WORKCENTER
+ '\','
+ '\''
+ WRKC1
+ '\','
+ '\''
+ WRKC2
+ '\''
+ ')">'
+ ' '
+ WORKCENTER
+ '</button>'
;
});
// Show yourself to the world, you little fvcker
$('#data-result').html(myWorkCenterData);
// Hide all
$('.class_input_button_all').addClass('d-none');
// Show instruction
if ( returnCode == '00' ) {
$('#workcenter-text-instruction').html('<?php echo $datahub_text0186 ?>');
} else {
$('#workcenter-text-instruction').html('<div class="font-weight-bold text-danger"><?php echo $datahub_error0900 ?></div>');
$('#data-result').html('');
$('#data-result-button-group').html('');
}
//-----------------------------------------------------------------------
// Set font awesome icon type
//-----------------------------------------------------------------------
// Value is from config/config.php
var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>';
setFontAwesomeIconType( iconType );
//-----------------------------------------------------------------------
})
.always(function( jsonData ) {
//console.log('I am always..');
})
.fail(function( xhr, ajaxOptions, thrownError ) {
console.log('I am failed..');
console.log( xhr );
$('#data-result').html( '<b>Error retreiving data from the server...</b>' );
});
}
//=============================================================================
// Load work order
//=============================================================================
function loadWorkOrders( WORKCENTER, WRKC1, WRKC2 )
{
popUpFull( WORKCENTER, WRKC1, WRKC2);
}
//=============================================================================
// Get data - search
//=============================================================================
function setWebserviceSearch( input_WRKC1 )
{
// Hide everything
if ( input_WRKC1 != '*RESET' ) {
$('.class_input_button_all').addClass('d-none');
// Show selected group
$('.workcenter-class-' + input_WRKC1).removeClass('d-none');
} else {
// Show all
$('.class_input_button_all').removeClass('d-none');
}
}
//=============================================================================
// Log off
//=============================================================================
function signoff()
{
window.location.href = "logout.php";
}
//=============================================================================
// Load page
//=============================================================================
function loadPage(url, p1, p2, p3)
{
window.location.href = url;
}
//=============================================================================
// Reset modal message
//=============================================================================
function resetModalMessage() {
// Reset
//$('#modal-message').removeClass('p-2 font-weight-bold border border-danger rounded bg-light').html( ' ' );
$('#modal-message').removeClass('border-bottom').html( ' ' );
$('#modal-save-button').removeClass('disabled').prop("disabled", false);
}
//=============================================================================
// Full screen popup
//=============================================================================
function popUpFull( WORKCENTER, WRKC1, WRKC2 )
{
var winname = 'win_' + url;
var url = 'hub_wa0363_maintain.php'
+ '?WRKGRP=' + WORKCENTER
+ '&WCNT1=' + WRKC1
+ '&WCNT2=' + WRKC2
;
params = 'width='+screen.width;
params += ', height='+screen.height;
params += ', top=0, left=0'
params += ', fullscreen=yes';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// screen popup - center
//=============================================================================
function popUpCenter(url, p1, p2, p3)
{
var v1_w = screen.availWidth;
var v1_h = screen.availHeight;
if ( parseInt(v1_w) > 1800 ) {
v1_w = 1800;
v1_h = v1_h - 200;
v1_center = v1_w/0.8;
}
// Center popup as good as possible
var left = (screen.width - v1_w) / 2;
var top = (screen.height - v1_h) / 4;
var winname = 'win_' + url;
params = 'width='+v1_w;
params += ', height='+v1_h;
params += ', top=' + top + ', left=' + left;
params += ', fullscreen=yes';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// screen popup - center - bigger
//=============================================================================
function popUpCenterBig(url, p1, p2, p3)
{
var v1_w = screen.availWidth;
var v1_h = screen.availHeight;
// Get 25%
v1_w_pct = v1_w * 0.25;
v1_w_new = v1_w - v1_w_pct;
if ( v1_w_new < 1 ) {
v1_w_new = 1800;
}
v1_w = v1_w_new;
v1_h = v1_h - 200;
v1_center = v1_w/0.8;
// Center popup as good as possible
var left = (screen.width - v1_w) / 2;
var top = (screen.height - v1_h) / 4;
var winname = 'win_' + url;
params = 'width='+v1_w;
params += ', height='+v1_h;
params += ', top=' + top + ', left=' + left;
params += ', fullscreen=yes';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// Popup top
//=============================================================================
function popUpTop(url, p1, p2, p3)
{
var winname = 'win_' + url;
w = 650;
h = 750;
params = 'width='+w;
params += ', height='+h;
params += ', top=0, left=0'
params += ', fullscreen=no';
params += ',scrollbars=1';
overview_win = window.open(url,winname, params);
if (window.focus) {overview_win.focus()}
return false;
}
//=============================================================================
// Scroll to something
//=============================================================================
function scrollToSomething( target )
{
thisID = '#' + target;
$.scrollTo( thisID, 1000);
}
//=============================================================================
// Set clock
//=============================================================================
function updateClock() {
var currentTime = moment().format('YYYY-MM-DD HH:mm:ss');
currentTime = REEFT_format_date( currentTime, DFT_DATE_DISPLAY_FORMAT )
$('#current-time').html( currentTime );
}
//=============================================================================
// jQuery - Ready
//=============================================================================
$(document).ready(function()
{
// Get me some data
getData();
$('#input-mode').val('*add');
//-----------------------------------------------------------------------
// Start the clock
//-----------------------------------------------------------------------
updateClock();
setInterval(function() {
updateClock();
}, 1000);
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Set font awesome icon type
//-----------------------------------------------------------------------
// Value is from config/config.php
var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>';
setFontAwesomeIconType( iconType );
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Delay keyup checker
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
// Set short cuts
//-----------------------------------------------------------------------
});
// -->
</script>
</head>
<body>
<div class="container-fluid mt-2 pl-3 pr-3">
<input type="text" class="d-none" id="input-mode">
<input type="text" class="d-none" id="input-show-deleted" >
<input type="text" class="d-none" id="input-search-line">
<input type="text" class="d-none" id="input-search-wc">
<input type="text" class="d-none" id="input-show-next-prodid">
<input type="text" class="d-none" id="input-init-screen-shown">
<input type="text" class="d-none" id="input-myCurrentPageCounter">
<input type="text" class="d-none" id="input-saveMyCurrentPageCounter">
<input type="text" class="d-none" id="input-saveMyDirection">
<input type="text" class="d-none" id="input-myTotalRecordsFound">
<input type="text" class="d-none" id="input-myTotalPages">
<input type="text" class="d-none" id="input-myBuildPageButtonsFirstTime">
<form name="dataForm" id="dataForm">
</form>
<div class="row">
<div class="col-2">
<img src="images/customer-logo.png" alt="Customer Logo">
</div>
<div class="col-8 text-center <?php echo $DFT_CLOCK_SIZE ?>">
<i class="font-awesome-pseudo-class fa-thin fa-clock"></i> <span id="current-time"><?php echo date('d-m-Y h:i:s') ?></span>
</div>
<div class="col-2 text-right">
<div id="button-exit-button" class="btn btn-primary mb-1" onclick="loadPage('menu_main.php','','','')" title="<?php echo $datahub_go_to_my_dear_home ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-home"></i></div>
<div class="d-none">
<div class="btn btn-primary mb-1 d-none d-xl-inline-block" onclick="loadPage('menu_main.php','','','')" title="<?php echo $datahub_go_to_my_dear_home_03 ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-fort"></i></div>
<div class="btn btn-danger mb-1 d-none d-lg-inline-block" onclick="signoff()" title="<?php echo $datahub_go_to_my_dear_home_04 ?>"><i class="font-awesome-pseudo-class fa-thin fa-2x fa-right-from-bracket"></i></div>
</div>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<div id="data-hub-company-information"></div>
</div>
</div>
<div class="card mt-2">
<div class="card-header text-muted">
<div class="row mt-2">
<div class="col-4 h4">
<i class="font-awesome-pseudo-class fa-thin fa-arrows-to-eye"></i> <?php echo "$datahub_text0185"; ?>
</div>
<div class="col text-right">
<div id="number-of-something"> </div>
<div id="load-time-from-database"></div>
</div>
</div>
</div>
<div class="card-body" id="card-body-id">
<!-- Message if screen is not wide enough -->
<div class="container-fluid mt-2 mb-4 d-block d-lg-none">
<div id="general-message-top" class="border border-danger rounded p-2 text-danger font-weight-boldx"><?php echo $datahub_error0040a ?></div>
</div>
<!-- Message if screen is not wide enough -->
<div id="workcenter-text-instruction" class="text-center mb-2 h5"></div>
<!-- Group lines found -->
<div class="Xd-none d-lg-block">
<div class="row mb-2">
<div class="col-12">
<div id="data-result-button-group"></div>
</div>
</div>
</div>
<div class="text-left" id="data-result"></div>
</div>
</div>
</div>
<!-- Set footer -->
<?php
include "include/footer.php";
?>
<!-- Set footer -->
<!-- ========================================================================== -->
<!-- M O D A L S -->
<!-- ========================================================================== -->
</body>
</html>